const { ipcRenderer } = require('electron');
const path = require('path');
const fs = require('fs');

// 获取URL参数
const urlParams = new URLSearchParams(window.location.search);
const selectedFilePath = decodeURIComponent(urlParams.get('path'));
const selectedFileName = selectedFilePath.split(/[\\/]/).pop().split('.')[0];

// 获取项目根目录路径（不包含src）
const rootPath = path.join(__dirname, '..', '..');

// 获取ID文件夹下的匹配文件夹路径
function getMatchingFolderPath() {
    const idFolderPath = path.join(rootPath, 'ID');
    const folders = fs.readdirSync(idFolderPath);
    const matchingFolder = folders.find(folder => folder.startsWith(selectedFileName));
    return matchingFolder ? path.join(idFolderPath, matchingFolder) : null;
}

// 获取组件HTML文件路径
function getComponentPath(name) {
    return path.join(__dirname, '..', 'components', `${name}.html`);
}

// 全局变量
let currentThresholds = {
    abilities: [],
    materials: []
};

// 通用函数
function formatJsonDisplay(data) {
    // ... 原有的formatJsonDisplay函数代码 ...
}

// 其他通用函数...

// 导出所有需要共享的变量和函数
module.exports = {
    ipcRenderer,
    path,
    fs,
    selectedFileName,
    rootPath,
    getMatchingFolderPath,
    getComponentPath,
    currentThresholds,
    formatJsonDisplay
}; 